
import {bigDiv, bigTimes} from "@/common/digital-computation";


export default function bigNumberUnit(n, decimal, zeroFilling = false) {
    // 显示单位处理
    if (n < 1000) {
        // 原样返回
        if (zeroFilling) {
            // 保留小数位不足小数位自动补0
            return bigTimes(n, 1, decimal, true);
        } else {
            return bigTimes(n, 1, decimal);
        }

    } else if (n >= 1000 && n < 1000000) {
        // 当小于 100万单位： K
        return bigDiv(n, 1000, 2) + 'k';

    } else if(n >= 1000000 && n < 1000000000) {
        // 当大于等于 100万单位： M
        return bigDiv(n, 1000000, 2) + 'M';

    } else if(n >= 1000000000 && n < 1000000000000) {
        // 当等于大于 10亿，单位： B
        return  bigDiv(n, 1000000000, 2) + 'B';
    } else if(n >= 1000000000000 && n < 1000000000000000) {
        // 当等于大于 1万亿，单位： T
        return bigDiv(n, 1000000000000, 2) + 'T';
    } else if(n >= 1000000000000000 && n < 1000000000000000000) {
        // 当等于大于 1千万亿，单位： T
        return bigDiv(n, 1000000000000000, 2) + 'P';
    } else if (n >= 1000000000000000000) {
        // 当等于大于 1百亿亿，单位： T
        return bigDiv(n, 1000000000000000000, 2) + 'E';
    }
}